home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / programr / dpmigcc5.zip / RSX / SOURCE / LOADER / CRT1.ASM next >
Assembly Source File  |  1994-12-12  |  1KB  |  69 lines

  1.     .SEQ
  2.  
  3. HDR_SEG segment para use16 public 'HEADER'
  4. HDR_SEG ends
  5.  
  6. _TEXT    segment para use16 public 'CODE'
  7. _TEXT    ends
  8.  
  9. _CONST    segment para public 'CONST'
  10. _CONST    ends
  11.  
  12. _BSS    segment para public 'BSS'
  13. _BSS    ends
  14.  
  15. _DATA    segment para use16 public 'DATA'
  16. _DATA    ends
  17.  
  18. _STACK    segment para use16 STACK 'STACK'
  19. _STACK    ends
  20.  
  21. DGROUP group  _CONST, _BSS, _DATA, _STACK
  22.  
  23.     .8086
  24.  
  25. HDR_SEG segment
  26.     db    "rsx (c) Rainer Schnitker '93 '94"
  27. HDR_SEG ends
  28.  
  29. _STACK_SIZE = 2048        ; Default stack size = 2K
  30.  
  31. _STACK    segment
  32.     db    _STACK_SIZE dup (?)    ; stack space
  33.     stack_top label word
  34. _STACK    ends
  35.  
  36. _DATA    segment
  37.     public __psp
  38.     __psp  dw  ?
  39.     public __acrtused
  40.     __acrtused  dw    9876h
  41. _DATA    ends
  42.  
  43. ; *******************************************************
  44.  
  45. extrn _main:near
  46.  
  47. _TEXT    segment
  48. assume cs:_TEXT
  49. assume ds:DGROUP
  50. assume es:DGROUP
  51. assume ss:DGROUP
  52.  
  53. ENTRY:
  54.     mov    dx, es            ; save psp
  55.     mov    ax, DGROUP        ; make ds=es=ss
  56.     mov    ds, ax
  57.     mov    es, ax
  58.     mov    ss, ax            ; reload stack
  59.     mov    sp, offset DGROUP:stack_top
  60.  
  61.     mov    __psp, dx        ; store psp
  62.     call    _main
  63.  
  64.     mov    ah, 04CH
  65.     int    021H
  66.  
  67. _TEXT ends
  68.     end    ENTRY
  69.